home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1993 July / Internet Tools.iso / RockRidge / mail / pp / pp-6.0 / Chans / lists / md.py < prev    next >
Encoding:
Text File  |  1991-12-18  |  1.5 KB  |  94 lines

  1. -- md.py
  2.  
  3. -- @(#) $Header: /xtel/pp/pp-beta/Chans/lists/RCS/md.py,v 6.0 1991/12/18 20:10:43 jpo Rel $
  4. --
  5. -- $Log: md.py,v $
  6. -- Revision 6.0  1991/12/18  20:10:43  jpo
  7. -- Release 6.0
  8. --
  9. --
  10.  
  11. MD
  12.     {
  13.     joint-iso-ccitt
  14.     mhs-motis(6)
  15.     arch (5)
  16.     modules(0)
  17.     directory(1)
  18.     }
  19.  
  20. DEFINITIONS IMPLICIT TAGS ::=
  21.  
  22. %{
  23. static orname_decode (pparm, pe)
  24. struct dl_permit **pparm;
  25. PE pe;
  26. {
  27.     PElementClass class;
  28.     PElementID id;
  29.     int result = OK;
  30.  
  31.     class = pe -> pe_class;
  32.     pe -> pe_class = PE_CLASS_APPL;
  33.     id = pe -> pe_id;
  34.     pe -> pe_id = 0;
  35.     if (((*pparm)->dp_or = pe2orn(pe)) == NULL)
  36.         result = NOTOK;
  37.     pe -> pe_id = id;
  38.     pe -> pe_class = class;
  39.     return result;
  40. }
  41.  
  42. static orname_encode (parm, ppe)
  43. struct dl_permit *parm;
  44. PE *ppe;
  45. {
  46.     if ((*ppe = orn2pe (parm->dp_or)) == NULL)
  47.         return NOTOK;
  48.     return OK;
  49. }
  50.  
  51. %}
  52.  
  53. PREFIXES encode decode print
  54.  
  55. BEGIN
  56.  
  57. IMPORTS
  58.     Name
  59.         FROM IF
  60.             {
  61.             joint-iso-ccitt
  62.             ds(5)
  63.             modules(1)
  64.             informationFramework(1)
  65.             }
  66.     ORName
  67.         FROM IOB
  68.             {
  69.             joint-iso-ccitt
  70.             mts (3)
  71.             modules(0)
  72.             mts-abstract-service(1)
  73.             };
  74.  
  75. ORNamePattern [[P ORName *]] ::= ORName [[p *]]
  76.  
  77. DLSubmitPermission [[P struct dl_permit *]]
  78.         ::=
  79.     CHOICE <<dp_type>>
  80.         {
  81.     individual [0]
  82.         --ORName [[p dp_or]],
  83.         *ANY [[a dp_or]] [[D orname_decode]] [[E orname_encode]],
  84.     member-of-dl [1]
  85.         -- ORName [[p dp_or]],
  86.         *ANY [[a dp_or]] [[D orname_decode]] [[E orname_encode]],
  87.     pattern-match [2]
  88.         --ORNamePattern [[p dp_or]],
  89.         *ANY [[a dp_or]] [[D orname_decode]] [[E orname_encode]],
  90.     member-of-group [3]
  91.         Name [[p dp_dn]]
  92.     }        
  93. END
  94.